1. Field of the Invention
The present invention relates to an information recording medium capable of recording both real-time data, such as video and audio data, and non-real-time data, such as a computer program. The present invention also relates to an information recording method for recording information into the information recording medium, and an information reproduction method for reproducing information recorded in the information recording medium.
2. Description of the Related Art
On a phase-change type optical disk or a rewritable optical disk such as a magneto-optical disk, the recorded data is typically provided with an error correction code. Therefore, even when a certain level of error occurs in reading the recorded data from such an optical disk, the error is corrected so that data can be appropriately read out.
However, a material of an optical disk is degraded due to the attachment of dusts, the occurrence of scratches, or the repetition of recording, depending on environments and the number of years for which the disk is used. In an area of an optical disk having such a degradation of the material of the optical disk, an error is likely to occur to a level exceeding a limitation of correction using an error correction code. In terms of the reliability of a disk, such an area (hereinafter referred to as a “defective area”) cannot be used to record and reproduce data.
In conventional rewritable optical disks, an extra area is typically provided in advance for compensating for a defective area (hereinafter referred to as a “spare area”). When a defective area is detected in recording data, a recording apparatus records data, which should have been recorded into the defective area, into a non-defective area in a spare area. Therefore, the reliability of the data is secured. Such a process is generally called a defeat management process. The defect management process allows a rewritable disk to be free from error.
In a rewritable optical disk having a large capacity, such as a DVD-RAM (Digital Versatile Disc-Random Access Memory) a plurality of sectors (a sector is a minimum unit of a recording area) are handled as a unit to which an error correction code is provided (such a unit including a plurality of sectors, to which an error correction code is provided, is hereinafter referred to as an “ECC block”).
A disk recording and reproduction drive can perform recording and reproduction only in units of the ECC block. A control apparatus, such as a personal computer, instructs the disk recording and reproduction drive to execute recording in units of a sector. Therefore, the disk recording and reproduction apparatus needs to execute a process in which an ECC block including a sector specified by a recording command from the control apparatus is read out, data specified by the recording command is rewritten into a portion of the ECC block, and the ECC block is recorded back onto a rewritable optical disk. Such a process is hereinafter referred to as an RMW (Read Modify Write) process.
Hereinafter, a conventional recording method will be described with reference to FIGS. 8 through 11.
FIG. 8 shows a data structure of a conventional rewritable disk 800. As shown in portion (a) of FIG. 8, the disk 800 includes a lead-in area 101, a data area 102, and a lead-out area 103.
The lead-in area 101 contains a control data area 101a and a defect management area 101b. The control data area 101a is an embossed area which is impossible to rewrite. In the control data area 101a, control data, such as the type of a disk and a physical parameter, which is referenced by an apparatus in recording and reproducing a disk, is recorded. The defect management area 101b is a rewritable area. In the defect management area 101b, information on a defect in the data area is recorded. A content of the defect management area 101b will be described in detail.
The data area 102 contains a user area 104 for recording user data, and a spare area 105 which contains a replacement area which can be used instead of a defective area detected in the user area 104.
The lead-out area 103 contains a defect management area 103b and a control data area 103a. In the defect management area 103b of the lead-out area 103, the same information as that recorded in the defect management area 101b of the lead-in area 101 is recorded. The reason that the same defect management information is recorded in a plurality of places is that the reliability of a disk can be improved, in case a defective area is present in a defect management area itself.
Portion (b) of FIG. 8 shows a data structure of the defect management area 101b. In the defect management area 101b of the lead-in area 101, two pieces of defect management information, i.e., a DMA1 (Defect Management Area 1) and a DMA2 (Defect Management Area 2), are recorded. The two pieces of defect management information have the same content. Similarly, in the defect management area 103b of the lead-out area 103, two pieces of defect management information, i.e., a DMA1 and a DMA2, are recorded.
Portion (c) of FIG. 8 shows a data structure of a DMA. A DMA contains a DDS (Disc Definition Structure), a PDL (Primary Defect List), and an SDL (Secondary Defect List). In the DDS, information, such as the number of defect management groups in a disk (i.e., the number of sets of a user area and a spare area, which is one in the case of DVD-RAM Version 2.0) and the number of times of updates, is recorded. In the PDL, the positional information of a defective area detected in physically formatting of a disk is recorded. Note that the present invention relates to a process of recording user data after the physical formatting of a disk, and therefore a detailed description of the PDL is omitted. In the SDL, the information used for managing a defective area detected after the physical formatting of a disk is recorded.
Portion (d) of FIG. 8 shows a data structure of the SDL. An SDL identifier is a specific identification code for identifying an SDL (e.g., 0002 h [h represents hexadecimal number]). An SDL update number is the number of times in which an SDL has been updated. A PDL update number is the number of times in which a PDL has been updated. The SDL update number and the PDL update number are used to select a DMA to be adopted, when four DMAs have different contents. The purpose is that an up-to-date DMA can be obtained even when an error occurs in updating some of the DMAs. An SDL registration number is the number of registrations of defect positional information following the SDL registration number. In the example shown in portion (d) of FIG. 8, only one set of an address of a defective area A and an address of a replacement area A thereof is registered. In this case, the SDL registration number is one. The address of the defective area A indicates the positional information of a defective area detected in a user area. The address of the replacement area A, indicates the positional information of a replacement area A (non-defective area) in a spare area which replaces the defective area A. A recording and reproduction apparatus refers to an SDL and uses a replacement area A instead of a defective area A. Therefore, data can be correctly recorded and reproduced. Such a process in which a defective area in a user area is replaced with a replacement area in a spare area, is called a defect replacement process. Note that as shown in portion (d) of FIG. 8, an unused portion in an SDL is filled with data of FFh.
Portion (e) of FIG. 8 shows a structure of an ECC block which is a part of a non-real-time file for storing non-real-time data, such as a computer program. In a DVD-RAM, one ECC block contains 16 sectors #0 through #15.
Portion (f) of FIG. 8 shows a data structure of a sector. The sector contains a sector header 806 for recording control information, such as address information (positional information), a user data area 107 for recording user data, and an EDC (Error Detection Code) which is an error detection code for data in a user data area. In the sector header 806, the sector information indicating an attribute of the sector, the address information indicating a position of the sector, and an TED (ID Error Detection code), which is a detection code for detecting an error of the sector information and the address information, are recorded. The sector information contains: a sector format indicating whether the disk is divided into a plurality of zones; a tracking method indicating a method for following a track for recording and reproduction of data; a reflectance of the medium; an area attribute indicating whether the sector belongs to a lead-in area or a data area or a lead-out area; a data type indicating whether the sector is rewritable; and a layer number indicating the layer number to which the sector belongs. Note that a reserve area is reserved in case of a future extension. In the reserve area, 00h is recorded. In the user data area 107, 2048 bytes of user data is recorded (one byte is equal to 8 bits). An EDC (Error Detection Code) is a detection code for detecting an error in the user data area 107.
Among data physically recorded on a disk, an error correction code for correcting a read-out error is included in addition to the above-described data structure of a sector. As described above, in a DVD-RAM, a unit of 16 sectors is provided with an error correction code. Hereinafter, an ECC block which is the unit of an error correction code will be described with reference to FIG. 9.
Portion (a) of FIG. 9 shows a data structure of an ECC block. In one sector, 12 user data rows (one user data row is 172 bytes), 12 internal code rows (one internal code row is 10 bytes), one external code row (172 bytes), and one internal and external code row (10 bytes), are recorded. Such data is converted to data having an ECC block structure as shown in portion (b) of FIG. 9 upon data reproduction. Conversely, upon data recording, data having the ECC block structure as shown in portion (b) of FIG. 9 is converted to the data having the sector structure as shown in portion (a) of FIG. 9. Upon data reproduction, 12 user data rows contained in each sector are initially linked to respective internal code rows. Further, a total of 16 of external code rows, each of which is distributed in a respective sector, and a total of 16 of the internal and external code rows are linked to an end portion of the ECC block structure. In this case, an internal code row m (m is an integer of from 0 to 15) is an error correction code which is provided with a user data row m and which is used to perform correction in a horizontal direction in portion (b) of FIG. 9. The external code row is used to perform correction in a vertical direction throughout the ECC block.
Further, the internal and external code row is located at an overlapping position in the horizontal and vertical directions, and is used both for correction of the external code row in the horizontal direction and for the correction of the internal code row in the vertical direction. Conversely, upon data recording, after an apparatus generates internal codes, external codes, and internal and external codes for the user data rows, the external code rows and the internal and external code rows are distributed and recorded in the respective sectors. Therefore, unless the overall ECC block data (16 sectors) are determined, the external code rows cannot be generated even when the data of one sector is determined. In this case, recording into a sector cannot be executed. As described above, in a DVD-RAM, since the generation of an error correction code and the error correction process using an error correction code cannot be executed in units of a sector, recording and reproduction are executed in units of an ECC block including 16 sectors. Further, a defective area is registered into an SDL in units of an ECC block.
As described above, in a DVD-RAM, recording onto a disk is executed in units of an ECC block. However, in the case of a DVD drive connected to a personal computer, the computer requests a recording process in units of a sector. Therefore, the DVD drive, which accepts a recording request in units of a sector, needs to perform a series of processes (RMW process), i.e., reading out in units of an ECC block, overwriting sector data to be updated, and recording in units of an ECC block. Hereinafter, the RMW process will be described with reference to FIG. 10.
FIG. 10 is a diagram used for explaining a concept of the RMW process. Portion (a) of FIG. 10 conceptually shows data to be recorded. It is assumed that data to be recorded is two sectors, i.e., a sector #16i+15 (i is an integer of zero or more) and a sector #16i+16. In this case, a DVD drive initially reads out data of two ECC blocks, i.e., an ECC block #i to which the sector #16i+15 belongs and an ECC block #i+1 to which the sector #16i+16 belongs (STEP 1). Thereafter, the DVD drive overwrites the data corresponding to the sector #16i+15 and the sector #16i+16 on its buffer memory from which the data has been read out with data to be recorded shown in portion (a) of FIG. 10 (STEP 2). The thus-updated data is recorded back onto a disk in units of an ECC block (STEP 3). As a result of the above-described RMW process, it is found that data only of the sectors #(16i+15) and #(16i+16) are updated in comparison of data (before recording) on the disk shown in portion (b) of FIG. 10 with data (after recording) on the disk shown in portion (d) of FIG. 10.
FIG. 11 is a flowchart showing a flow of the RMW process. Hereinafter, the flow shown in FIG. 11 will be described step by step.
The DVD drive, which has accepted a recording request, determines whether a border of an area specified by the recording request is a border of an ECC block. Such a determination is executed by checking whether a sector number from which recording starts and the number of sectors to be recorded each are an integral multiple of 16. When a border of an area specified by the recording request is a border of an ECC block, the process branches to (S1106). In this case, recording can be executed in units of an ECC block. This is because an RMW process is not required.
When a border of an area specified by the recording request is not a border of an ECC block, the process branches to (S1102) in which an RMW process is executed.
The DVD drive reads out from a disk an ECC block including a sector specified by the recording request (S1102). When the reading out is normally ended, the process branches to (S1105). When the reading out is erroneously ended, the process branches to (S1104) (error end).
The DVD drive updates recording requested portion of read-out data to data specified by the recording request (recording request data) (S1105). Thereafter, the DVD drive records the data updated in (S1105) onto the disk in units of an ECC block (S1106). When an error occurs in the recording process, it is determined that an area into which data will be recorded has a defect. As a result, the process branches to (S1110) in which a defect replacement process is executed. When the recording process is normally ended, the process branches to (S1108).
The DVD drive reads out the data recorded in (S1106), thereby determining whether the recorded data can be normally reproduced (S1108). In this case, the process executed in (S1108) is called a verify process. In a typical verify process, the presence of a margin for reproduction is confirmed in order to secure that data can be normally reproduced at a future time. In the verify process, when it is determined that data cannot be normally reproduced or that a sufficient margin is not secured although data could have been normally reproduced (S1109), it is determined that there is a defect in an area in which the data is recorded. In this case, the process branches to (S1110). When a margin is secured and reproduction can be executed in the verify process, the process branches to (S1111) (normal end).
When an error is detected in the recording process (S1106, S1107) or the verify process (S1108, S1109), a replacement area which is available from a spare area is allocated, and the processes subsequent to (S1106) are repeatedly applied to the allocated replacement area. As described above, recording can be executed in units of a sector for a DVD-RAM which can be recorded only in units of an ECC block including a plurality of sectors.
However, the above-described RMW process is based on the premise that an ECC block including an area specified in a recording request can be reproduced. That is, when it is determined in (S1103) of FIG. 11 that an error occurs, the process immediately goes to the error end. The reason of the immediate error end as a result of such a determination is that data other than the area specified in the recording request cannot be obtained although recording can be executed only in units of an ECC block. To avoid such a situation, in conventional DVD drives, the verify step such as (S1108, S1109) shown in FIG. 11 is provided. The verify step assures reproduction.
On the other hand, a method without verification of the recorded data has been proposed in order to secure that video and audio data is recorded onto a disk in real-time (e.g., Japanese Laid-open Publication No. 10-516372). As described above, when the verification of recorded data and the defect replacement process in which a defective area is replaced with a replacement area, are not executed, there may be an occurrence of a partial area on a disk in which reproduction cannot be executed. As a result, the error end may occur in the RMW process. When such a situation occurs in a computer environment, a fatal problem arises in which data cannot be saved on the disk. In addition, a serious problem may arise in which the computer itself hangs up.